package com.avantis.common.entity;

import com.avantis.common.entity.base.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.data.annotation.CreatedDate;
import org.springframework.data.annotation.LastModifiedDate;

import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;

/**
 * @Author: tracywang
 * @Date: 2018/12/25
 * @Descrption:
 */
@Entity
@Table(name = "k_product")
@Data
public class Product extends BaseEntity implements Serializable {

    /**
     * 商品编码
     */
    @Column
    private String productNo;

    /**
     * 商品名称
     */
    @Column
    private String productName;

    /**
     * 商品分类
     */
    @Column
    private String category;

    /**
     * 条形码
     */
    @Column
    private String barcode;

    /**
     * 属性
     */
    @Column
    private String attribute;

    /**
     * 规格
     */
    @Column
    private String specifications;

    /**
     * 单位
     */
    @Column
    private String unit;

    /**
     * 商品状态
     */
    @Column
    private Integer status=0;

    /**
     * 商品图片
     */
    @Column
    private String url;

    /**
     * 库存数
     */
    @Column
    private Integer stock=0;

    /**
     * 最低库存数
     */
    @Column
    private Integer minStock=0;

    /**
     * 最高库存数
     */
    @Column
    private Integer maxStock=0;

    /**
     * 是否预警
     */
    @Column
    private Integer needWarning=0;

    /**
     * 是否有期初产品
     */
    @Column
    private Integer isEarlyStage=0;

    /**
     * 所在仓库编码
     */
    @Column
    private Integer warehouseId;

    /**
     * 生产者
     */
    @Column
    private String producer;

    /**
     * 生产地（省）
     */
    @Column
    private Integer province;

    /**
     * 生产地（市）
     */
    @Column
    private Integer city;

    /**
     * 所在地
     */
    @Column
    private String address;

    /**
     * 保质期
     */
    @Column
    private String qualityPeriod;

    /**
     * 生产日期
     */
    @Column
    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
    private Date productDate;

    /**
     * 注意事项
     */
    @Column
    private String attention;

    /**
     * 说明
     */
    @Column
    private String instruction;

    /**
     * 净含量
     */
    @Column
    private String netContent;

    /**
     * 批次号
     */
    @Column
    private String batchNo;

    /**
     * 存储条件
     */
    @Column
    private String storageCondition;

    /**
     * 备注
     */
    @Column
    private String remark;

}
